package rak.r91.service;

import java.util.List;

import rak.r91.data.Item;
import rak.r91.data.ItemAttribute;
import rak.r91.data.ItemType;

public interface ItemManager {
	/**
	 * 
	 * @return
	 */
	public List<ItemType> getItemTypes();
	/**
	 * 
	 * @return
	 */
	public List<ItemType> getItemSubTypes(int itemSubTypeID);
	/**
	 * 
	 * @return
	 */
	public List<Item> getItems(int ItemTypeID);
	/**
	 * 
	 * @param itemID
	 * @return
	 */
	public Item getItem(int itemID);
	/**
	 * 
	 * @param item
	 * @param itemAttributeList
	 */
	public void addNewItem(Item item,List<ItemAttribute> itemAttributeList);
	public Item getItemAndAttributes(int itemID);
	/**Returns list of given item type attributes
	 * 
	 * @param itemType
	 * @return
	 */
	public List<ItemAttribute> getItemTypeAttributes(ItemType itemType);
	public int changeItem(Item item);
}
